import request from '@/config/axios'

// 客户银行账户管理 VO
export interface CustomerBankVO {
  id: number // ID
  customerUscc: string // 统一社会信用代码
  payeeName: string // 收款人
  bankCode: string // 开户银行编码
  bankName: string // 开户银行
  bankBranchName: string // 开户支行
  bankAccountNo: string // 银行账号
  bankAccountName: string // 开户名/开户单位
  fixedPhone: string // 固定电话
  registerAddr: string // 注册地址
  receiveAddr: string // 收件地址
  deptId: number // 机构ID
}

// 客户银行账户管理 API
export const CustomerBankApi = {
  // 查询客户银行账户管理分页
  getCustomerBankPage: async (params: any) => {
    return await request.get({ url: `/base/customer-bank/page`, params })
  },

  // 查询客户银行账户管理分页
  getCustomerBankList: async (params: any) => {
    return await request.get({ url: `/base/customer-bank/list`, params })
  },

  // 查询客户银行账户管理详情
  getCustomerBank: async (id: number) => {
    return await request.get({ url: `/base/customer-bank/get?id=` + id })
  },

  // 新增客户银行账户管理
  createCustomerBank: async (data: CustomerBankVO) => {
    return await request.post({ url: `/base/customer-bank/create`, data })
  },

  // 修改客户银行账户管理
  updateCustomerBank: async (data: CustomerBankVO) => {
    return await request.put({ url: `/base/customer-bank/update`, data })
  },

  // 修改客户银行账户默认
  updateDef: async (data: CustomerBankVO) => {
    return await request.put({ url: `/base/customer-bank/updateDef`, data })
  },

  // 删除客户银行账户管理
  deleteCustomerBank: async (id: number) => {
    return await request.delete({ url: `/base/customer-bank/delete?id=` + id })
  },

  // 批量删除客户银行账户管理
  deleteCustomerBanks: async (ids: string) => {
    return await request.delete({ url: `/base/customer-bank/deletes?ids=` + ids })
  },

  // 导出客户银行账户管理 Excel
  exportCustomerBank: async (params) => {
    return await request.download({ url: `/base/customer-bank/export-excel`, params })
  }
}
